package manager;

import entity.User;
import java.util.List;

public class UserManager {
    // 用户登录
    public User login(String username, String password, String userType) {
        List<User> users = GlobalData.users;
        for (User user : users) {
            if (user.getUsername().equals(username)
                    && user.getPassword().equals(password)
                    && user.getRole().equals(userType)) {
                return user;
            }
        }
        return null;
    }

    // 修改密码
    public boolean changePassword(String username, String oldPwd, String newPwd) {
        List<User> users = GlobalData.users;
        for (User user : users) {
            if (user.getUsername().equals(username) && user.getPassword().equals(oldPwd)) {
                user.setPassword(newPwd);
                user.setFirstLogin(false); // 首次登录修改密码后更新状态
                LogManager.log(username + "修改密码", username);
                return true;
            }
        }
        return false;
    }

    // 管理员添加用户（第一轮基础实现）
    public boolean addUser(User user) {
        for (User u : GlobalData.users) {
            if (u.getUsername().equals(user.getUsername())) {
                return false; // 用户名已存在
            }
        }
        GlobalData.users.add(user);
        LogManager.log("添加" + user.getRole() + ":" + user.getUsername(), "admin");
        return true;
    }
}